<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>eRPC API Reference: erpc::Codec Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="customdoxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="nxp_logo_small.png"/></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">eRPC API Reference
   &#160;<span id="projectnumber">Rev. 1.5.0</span>
   </div>
   <div id="projectbrief">NXP Semiconductors</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="modules.html"><span>API&#160;Reference</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('classerpc_1_1_codec.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classerpc_1_1_codec-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">erpc::Codec Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span><div class="ingroups"><a class="el" href="group__infra.html">Infrastructure</a> &raquo; <a class="el" href="group__infra__codec.html">Serialization</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p>Abstract serialization encoder/decoder interface.  
 <a href="classerpc_1_1_codec.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="codec_8h_source.html">codec.h</a>&gt;</code></p>
<div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for erpc::Codec:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" frameborder="0" src="classerpc_1_1_codec__inherit__graph.svg" width="136" height="112"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<div id="dynsection-1" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;">
  <img id="dynsection-1-trigger" src="closed.png" alt="+"/> Collaboration diagram for erpc::Codec:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" frameborder="0" src="classerpc_1_1_codec__coll__graph.svg" width="318" height="142"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe>
</div>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ab8a8bf8e26193edaa7b60bd60a74e241"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#ab8a8bf8e26193edaa7b60bd60a74e241">Codec</a> ()</td></tr>
<tr class="memdesc:ab8a8bf8e26193edaa7b60bd60a74e241"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="#ab8a8bf8e26193edaa7b60bd60a74e241">More...</a><br /></td></tr>
<tr class="separator:ab8a8bf8e26193edaa7b60bd60a74e241"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad4799bf9411c7fbec26082f0143abb1b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad4799bf9411c7fbec26082f0143abb1b"></a>
virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#ad4799bf9411c7fbec26082f0143abb1b">~Codec</a> ()</td></tr>
<tr class="memdesc:ad4799bf9411c7fbec26082f0143abb1b"><td class="mdescLeft">&#160;</td><td class="mdescRight"><a class="el" href="classerpc_1_1_codec.html" title="Abstract serialization encoder/decoder interface. ">Codec</a> destructor. <br /></td></tr>
<tr class="separator:ad4799bf9411c7fbec26082f0143abb1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a45709c93c094b3429facb6962827892e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classerpc_1_1_message_buffer.html">MessageBuffer</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a45709c93c094b3429facb6962827892e">getBuffer</a> ()</td></tr>
<tr class="memdesc:a45709c93c094b3429facb6962827892e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return message buffer used for read and write data.  <a href="#a45709c93c094b3429facb6962827892e">More...</a><br /></td></tr>
<tr class="separator:a45709c93c094b3429facb6962827892e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace7d311abca68729346074d603879c9f"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#ace7d311abca68729346074d603879c9f">setBuffer</a> (<a class="el" href="classerpc_1_1_message_buffer.html">MessageBuffer</a> &amp;buf)</td></tr>
<tr class="memdesc:ace7d311abca68729346074d603879c9f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for set message buffer used for read and write data.  <a href="#ace7d311abca68729346074d603879c9f">More...</a><br /></td></tr>
<tr class="separator:ace7d311abca68729346074d603879c9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9be084e154883188d26fbad05ff2c7b9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9be084e154883188d26fbad05ff2c7b9"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a9be084e154883188d26fbad05ff2c7b9">reset</a> ()</td></tr>
<tr class="memdesc:a9be084e154883188d26fbad05ff2c7b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reset the codec to initial state. <br /></td></tr>
<tr class="separator:a9be084e154883188d26fbad05ff2c7b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Encoding</div></td></tr>
<tr class="memitem:ac41e5be3cb4b64f4a0c52de160a7537d"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#ac41e5be3cb4b64f4a0c52de160a7537d">startWriteMessage</a> (<a class="el" href="namespaceerpc.html#a7116f64fb1351d72417155cfed485478">message_type_t</a> type, uint32_t service, uint32_t request, uint32_t sequence)=0</td></tr>
<tr class="memdesc:ac41e5be3cb4b64f4a0c52de160a7537d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for write header of message.  <a href="#ac41e5be3cb4b64f4a0c52de160a7537d">More...</a><br /></td></tr>
<tr class="separator:ac41e5be3cb4b64f4a0c52de160a7537d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5781b1bb58c39f977bef3d599f62d97"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#ad5781b1bb58c39f977bef3d599f62d97">endWriteMessage</a> ()=0</td></tr>
<tr class="memdesc:ad5781b1bb58c39f977bef3d599f62d97"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for write end of message.  <a href="#ad5781b1bb58c39f977bef3d599f62d97">More...</a><br /></td></tr>
<tr class="separator:ad5781b1bb58c39f977bef3d599f62d97"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a002b086a5534d5be910d6930d3468a00"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a002b086a5534d5be910d6930d3468a00">write</a> (bool value)=0</td></tr>
<tr class="memdesc:a002b086a5534d5be910d6930d3468a00"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for write boolean value.  <a href="#a002b086a5534d5be910d6930d3468a00">More...</a><br /></td></tr>
<tr class="separator:a002b086a5534d5be910d6930d3468a00"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8bade9ddf36d8ac79b675e9b10169fdf"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a8bade9ddf36d8ac79b675e9b10169fdf">write</a> (int8_t value)=0</td></tr>
<tr class="memdesc:a8bade9ddf36d8ac79b675e9b10169fdf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for write int8_t value.  <a href="#a8bade9ddf36d8ac79b675e9b10169fdf">More...</a><br /></td></tr>
<tr class="separator:a8bade9ddf36d8ac79b675e9b10169fdf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a07e236dd49c216ffab823afc58635e5c"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a07e236dd49c216ffab823afc58635e5c">write</a> (int16_t value)=0</td></tr>
<tr class="memdesc:a07e236dd49c216ffab823afc58635e5c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for write int16_t value.  <a href="#a07e236dd49c216ffab823afc58635e5c">More...</a><br /></td></tr>
<tr class="separator:a07e236dd49c216ffab823afc58635e5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24be3849ad7cabda4c589a912fdc7f82"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a24be3849ad7cabda4c589a912fdc7f82">write</a> (int32_t value)=0</td></tr>
<tr class="memdesc:a24be3849ad7cabda4c589a912fdc7f82"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for write int32_t value.  <a href="#a24be3849ad7cabda4c589a912fdc7f82">More...</a><br /></td></tr>
<tr class="separator:a24be3849ad7cabda4c589a912fdc7f82"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef1f5071b1e07f34fe9731fa5e10687f"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#aef1f5071b1e07f34fe9731fa5e10687f">write</a> (int64_t value)=0</td></tr>
<tr class="memdesc:aef1f5071b1e07f34fe9731fa5e10687f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for write int64_t value.  <a href="#aef1f5071b1e07f34fe9731fa5e10687f">More...</a><br /></td></tr>
<tr class="separator:aef1f5071b1e07f34fe9731fa5e10687f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8edff61120231fb0e652825c2f6371e5"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a8edff61120231fb0e652825c2f6371e5">write</a> (uint8_t value)=0</td></tr>
<tr class="memdesc:a8edff61120231fb0e652825c2f6371e5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for write uint8_t value.  <a href="#a8edff61120231fb0e652825c2f6371e5">More...</a><br /></td></tr>
<tr class="separator:a8edff61120231fb0e652825c2f6371e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa169e906bf4f7cd12a4e5588f65b14f6"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#aa169e906bf4f7cd12a4e5588f65b14f6">write</a> (uint16_t value)=0</td></tr>
<tr class="memdesc:aa169e906bf4f7cd12a4e5588f65b14f6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for write uint16_t value.  <a href="#aa169e906bf4f7cd12a4e5588f65b14f6">More...</a><br /></td></tr>
<tr class="separator:aa169e906bf4f7cd12a4e5588f65b14f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a929dc3f32a088c03b9f8cef0e30cab49"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a929dc3f32a088c03b9f8cef0e30cab49">write</a> (uint32_t value)=0</td></tr>
<tr class="memdesc:a929dc3f32a088c03b9f8cef0e30cab49"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for write uint32_t value.  <a href="#a929dc3f32a088c03b9f8cef0e30cab49">More...</a><br /></td></tr>
<tr class="separator:a929dc3f32a088c03b9f8cef0e30cab49"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a59d6be059c10422e528039699bf341ce"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a59d6be059c10422e528039699bf341ce">write</a> (uint64_t value)=0</td></tr>
<tr class="memdesc:a59d6be059c10422e528039699bf341ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for write uint64_t value.  <a href="#a59d6be059c10422e528039699bf341ce">More...</a><br /></td></tr>
<tr class="separator:a59d6be059c10422e528039699bf341ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5aeed7d90150e7f65eb1017bc0e2688c"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a5aeed7d90150e7f65eb1017bc0e2688c">write</a> (float value)=0</td></tr>
<tr class="memdesc:a5aeed7d90150e7f65eb1017bc0e2688c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for write float value.  <a href="#a5aeed7d90150e7f65eb1017bc0e2688c">More...</a><br /></td></tr>
<tr class="separator:a5aeed7d90150e7f65eb1017bc0e2688c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a973c421155e391dbb0550fa5e0065001"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a973c421155e391dbb0550fa5e0065001">write</a> (double value)=0</td></tr>
<tr class="memdesc:a973c421155e391dbb0550fa5e0065001"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for write double value.  <a href="#a973c421155e391dbb0550fa5e0065001">More...</a><br /></td></tr>
<tr class="separator:a973c421155e391dbb0550fa5e0065001"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69360615709db326437110043adfae9c"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a69360615709db326437110043adfae9c">writePtr</a> (uintptr_t value)=0</td></tr>
<tr class="memdesc:a69360615709db326437110043adfae9c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for write uintptr value.  <a href="#a69360615709db326437110043adfae9c">More...</a><br /></td></tr>
<tr class="separator:a69360615709db326437110043adfae9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acdcec6c9575388ebbccfc7e326cfb7a2"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#acdcec6c9575388ebbccfc7e326cfb7a2">writeString</a> (uint32_t length, const char *value)=0</td></tr>
<tr class="memdesc:acdcec6c9575388ebbccfc7e326cfb7a2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for write string value.  <a href="#acdcec6c9575388ebbccfc7e326cfb7a2">More...</a><br /></td></tr>
<tr class="separator:acdcec6c9575388ebbccfc7e326cfb7a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a395fc7d8577b0a00d571ed320b4da57e"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a395fc7d8577b0a00d571ed320b4da57e">writeBinary</a> (uint32_t length, const uint8_t *value)=0</td></tr>
<tr class="memdesc:a395fc7d8577b0a00d571ed320b4da57e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for write binary value.  <a href="#a395fc7d8577b0a00d571ed320b4da57e">More...</a><br /></td></tr>
<tr class="separator:a395fc7d8577b0a00d571ed320b4da57e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3255757c4dd48017a5f9e796c49e822b"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a3255757c4dd48017a5f9e796c49e822b">startWriteList</a> (uint32_t length)=0</td></tr>
<tr class="memdesc:a3255757c4dd48017a5f9e796c49e822b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for start write list.  <a href="#a3255757c4dd48017a5f9e796c49e822b">More...</a><br /></td></tr>
<tr class="separator:a3255757c4dd48017a5f9e796c49e822b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb6720bc9f02a2068c32c353647cfa92"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#acb6720bc9f02a2068c32c353647cfa92">endWriteList</a> ()=0</td></tr>
<tr class="memdesc:acb6720bc9f02a2068c32c353647cfa92"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for end write list.  <a href="#acb6720bc9f02a2068c32c353647cfa92">More...</a><br /></td></tr>
<tr class="separator:acb6720bc9f02a2068c32c353647cfa92"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ef8f0ef36444918b184036f02631088"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a7ef8f0ef36444918b184036f02631088">startWriteStruct</a> ()=0</td></tr>
<tr class="memdesc:a7ef8f0ef36444918b184036f02631088"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for start write structure.  <a href="#a7ef8f0ef36444918b184036f02631088">More...</a><br /></td></tr>
<tr class="separator:a7ef8f0ef36444918b184036f02631088"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab35961c106dabca5c2204e8e53602d39"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#ab35961c106dabca5c2204e8e53602d39">endWriteStruct</a> ()=0</td></tr>
<tr class="memdesc:ab35961c106dabca5c2204e8e53602d39"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for end write structure.  <a href="#ab35961c106dabca5c2204e8e53602d39">More...</a><br /></td></tr>
<tr class="separator:ab35961c106dabca5c2204e8e53602d39"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8a0dde4a000ae0a443b2f3565226b7ad"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a8a0dde4a000ae0a443b2f3565226b7ad">startWriteUnion</a> (int32_t discriminator)=0</td></tr>
<tr class="memdesc:a8a0dde4a000ae0a443b2f3565226b7ad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for start write union.  <a href="#a8a0dde4a000ae0a443b2f3565226b7ad">More...</a><br /></td></tr>
<tr class="separator:a8a0dde4a000ae0a443b2f3565226b7ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abebbe8a790c65180033960963308eb49"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#abebbe8a790c65180033960963308eb49">endWriteUnion</a> ()=0</td></tr>
<tr class="memdesc:abebbe8a790c65180033960963308eb49"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for end write union.  <a href="#abebbe8a790c65180033960963308eb49">More...</a><br /></td></tr>
<tr class="separator:abebbe8a790c65180033960963308eb49"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad070335fa31ad73d644ae2fc28ba0003"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#ad070335fa31ad73d644ae2fc28ba0003">writeNullFlag</a> (bool isNull)=0</td></tr>
<tr class="memdesc:ad070335fa31ad73d644ae2fc28ba0003"><td class="mdescLeft">&#160;</td><td class="mdescRight">Writes a flag indicating whether the next value is null.  <a href="#ad070335fa31ad73d644ae2fc28ba0003">More...</a><br /></td></tr>
<tr class="separator:ad070335fa31ad73d644ae2fc28ba0003"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="member-group"></a>
Decoding</h2></td></tr>
<tr class="memitem:a003c4d8420239b9a347b46554ebeb903"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classerpc_1_1_message_buffer.html">MessageBuffer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a003c4d8420239b9a347b46554ebeb903">m_buffer</a></td></tr>
<tr class="separator:a003c4d8420239b9a347b46554ebeb903"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9fe5af5136be642e05a9e7335af8ff7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classerpc_1_1_message_buffer_1_1_cursor.html">MessageBuffer::Cursor</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#ad9fe5af5136be642e05a9e7335af8ff7">m_cursor</a></td></tr>
<tr class="separator:ad9fe5af5136be642e05a9e7335af8ff7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad98b0492614fe14cf4461972cd6fe9d9"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#ad98b0492614fe14cf4461972cd6fe9d9">startReadMessage</a> (<a class="el" href="namespaceerpc.html#a7116f64fb1351d72417155cfed485478">message_type_t</a> *type, uint32_t *service, uint32_t *request, uint32_t *sequence)=0</td></tr>
<tr class="memdesc:ad98b0492614fe14cf4461972cd6fe9d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for read header of message.  <a href="#ad98b0492614fe14cf4461972cd6fe9d9">More...</a><br /></td></tr>
<tr class="separator:ad98b0492614fe14cf4461972cd6fe9d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0ad6166e412a6161e7cc8c7aab81c1bf"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a0ad6166e412a6161e7cc8c7aab81c1bf">endReadMessage</a> ()=0</td></tr>
<tr class="memdesc:a0ad6166e412a6161e7cc8c7aab81c1bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for read end of message.  <a href="#a0ad6166e412a6161e7cc8c7aab81c1bf">More...</a><br /></td></tr>
<tr class="separator:a0ad6166e412a6161e7cc8c7aab81c1bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae6f1c838bff3b95705e05d0204890fa5"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#ae6f1c838bff3b95705e05d0204890fa5">read</a> (bool *value)=0</td></tr>
<tr class="memdesc:ae6f1c838bff3b95705e05d0204890fa5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for read boolean value.  <a href="#ae6f1c838bff3b95705e05d0204890fa5">More...</a><br /></td></tr>
<tr class="separator:ae6f1c838bff3b95705e05d0204890fa5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a791e0ce1915cdfd0fe1cd1d4315f5fb6"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a791e0ce1915cdfd0fe1cd1d4315f5fb6">read</a> (int8_t *value)=0</td></tr>
<tr class="memdesc:a791e0ce1915cdfd0fe1cd1d4315f5fb6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for read int8_t value.  <a href="#a791e0ce1915cdfd0fe1cd1d4315f5fb6">More...</a><br /></td></tr>
<tr class="separator:a791e0ce1915cdfd0fe1cd1d4315f5fb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a830e2c4e43d9fa97d18c1e7fe99180a8"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a830e2c4e43d9fa97d18c1e7fe99180a8">read</a> (int16_t *value)=0</td></tr>
<tr class="memdesc:a830e2c4e43d9fa97d18c1e7fe99180a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for read int16_t value.  <a href="#a830e2c4e43d9fa97d18c1e7fe99180a8">More...</a><br /></td></tr>
<tr class="separator:a830e2c4e43d9fa97d18c1e7fe99180a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a649e1087fd0a3595bab8a1576d9bed46"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a649e1087fd0a3595bab8a1576d9bed46">read</a> (int32_t *value)=0</td></tr>
<tr class="memdesc:a649e1087fd0a3595bab8a1576d9bed46"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for read int32_t value.  <a href="#a649e1087fd0a3595bab8a1576d9bed46">More...</a><br /></td></tr>
<tr class="separator:a649e1087fd0a3595bab8a1576d9bed46"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e96770ca212c00480381c4f0f54a3ff"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a7e96770ca212c00480381c4f0f54a3ff">read</a> (int64_t *value)=0</td></tr>
<tr class="memdesc:a7e96770ca212c00480381c4f0f54a3ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for read int64_t value.  <a href="#a7e96770ca212c00480381c4f0f54a3ff">More...</a><br /></td></tr>
<tr class="separator:a7e96770ca212c00480381c4f0f54a3ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5fb7f3b1c974196cba75f65538d6b80"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#af5fb7f3b1c974196cba75f65538d6b80">read</a> (uint8_t *value)=0</td></tr>
<tr class="memdesc:af5fb7f3b1c974196cba75f65538d6b80"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for read uint8_t value.  <a href="#af5fb7f3b1c974196cba75f65538d6b80">More...</a><br /></td></tr>
<tr class="separator:af5fb7f3b1c974196cba75f65538d6b80"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9f87529ab9ed05b0fdd175bbac2f41a9"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a9f87529ab9ed05b0fdd175bbac2f41a9">read</a> (uint16_t *value)=0</td></tr>
<tr class="memdesc:a9f87529ab9ed05b0fdd175bbac2f41a9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for read uint16_t value.  <a href="#a9f87529ab9ed05b0fdd175bbac2f41a9">More...</a><br /></td></tr>
<tr class="separator:a9f87529ab9ed05b0fdd175bbac2f41a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a432a28551422ece42286e13868a696d2"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a432a28551422ece42286e13868a696d2">read</a> (uint32_t *value)=0</td></tr>
<tr class="memdesc:a432a28551422ece42286e13868a696d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for read uint32_t value.  <a href="#a432a28551422ece42286e13868a696d2">More...</a><br /></td></tr>
<tr class="separator:a432a28551422ece42286e13868a696d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62e4d29fdb26b3cdafa1e866848610bf"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a62e4d29fdb26b3cdafa1e866848610bf">read</a> (uint64_t *value)=0</td></tr>
<tr class="memdesc:a62e4d29fdb26b3cdafa1e866848610bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for read uint64_t value.  <a href="#a62e4d29fdb26b3cdafa1e866848610bf">More...</a><br /></td></tr>
<tr class="separator:a62e4d29fdb26b3cdafa1e866848610bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad507e9dd4fa21a17f705516ac23e96db"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#ad507e9dd4fa21a17f705516ac23e96db">read</a> (float *value)=0</td></tr>
<tr class="memdesc:ad507e9dd4fa21a17f705516ac23e96db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for read float value.  <a href="#ad507e9dd4fa21a17f705516ac23e96db">More...</a><br /></td></tr>
<tr class="separator:ad507e9dd4fa21a17f705516ac23e96db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9d75c5f93bc233feaf444c3ec6b9dcc"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#ad9d75c5f93bc233feaf444c3ec6b9dcc">read</a> (double *value)=0</td></tr>
<tr class="memdesc:ad9d75c5f93bc233feaf444c3ec6b9dcc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for read double value.  <a href="#ad9d75c5f93bc233feaf444c3ec6b9dcc">More...</a><br /></td></tr>
<tr class="separator:ad9d75c5f93bc233feaf444c3ec6b9dcc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a29396d4d6870dba37cde1340cba45b5a"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a29396d4d6870dba37cde1340cba45b5a">readPtr</a> (uintptr_t *value)=0</td></tr>
<tr class="memdesc:a29396d4d6870dba37cde1340cba45b5a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for read uintptr value.  <a href="#a29396d4d6870dba37cde1340cba45b5a">More...</a><br /></td></tr>
<tr class="separator:a29396d4d6870dba37cde1340cba45b5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a29c01cadcd7cd544c2248899d9d7cb2d"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a29c01cadcd7cd544c2248899d9d7cb2d">readString</a> (uint32_t *length, char **value)=0</td></tr>
<tr class="memdesc:a29c01cadcd7cd544c2248899d9d7cb2d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for read string value.  <a href="#a29c01cadcd7cd544c2248899d9d7cb2d">More...</a><br /></td></tr>
<tr class="separator:a29c01cadcd7cd544c2248899d9d7cb2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9f2fb79b05e89fc1c8a49454fd39e152"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a9f2fb79b05e89fc1c8a49454fd39e152">readBinary</a> (uint32_t *length, uint8_t **value)=0</td></tr>
<tr class="memdesc:a9f2fb79b05e89fc1c8a49454fd39e152"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for read binary value.  <a href="#a9f2fb79b05e89fc1c8a49454fd39e152">More...</a><br /></td></tr>
<tr class="separator:a9f2fb79b05e89fc1c8a49454fd39e152"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8728e3da1cb91af2e92fa236cacab06"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#aa8728e3da1cb91af2e92fa236cacab06">startReadList</a> (uint32_t *length)=0</td></tr>
<tr class="memdesc:aa8728e3da1cb91af2e92fa236cacab06"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for start read list.  <a href="#aa8728e3da1cb91af2e92fa236cacab06">More...</a><br /></td></tr>
<tr class="separator:aa8728e3da1cb91af2e92fa236cacab06"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af259955abf004ce3929bcc39b20611dd"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#af259955abf004ce3929bcc39b20611dd">endReadList</a> ()=0</td></tr>
<tr class="memdesc:af259955abf004ce3929bcc39b20611dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for end read list.  <a href="#af259955abf004ce3929bcc39b20611dd">More...</a><br /></td></tr>
<tr class="separator:af259955abf004ce3929bcc39b20611dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a02e5f8b725da2f0560ce8a07fba3d991"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a02e5f8b725da2f0560ce8a07fba3d991">startReadStruct</a> ()=0</td></tr>
<tr class="memdesc:a02e5f8b725da2f0560ce8a07fba3d991"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for start read structure.  <a href="#a02e5f8b725da2f0560ce8a07fba3d991">More...</a><br /></td></tr>
<tr class="separator:a02e5f8b725da2f0560ce8a07fba3d991"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a145ed0908df02c7c059046e924dfc2d3"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a145ed0908df02c7c059046e924dfc2d3">endReadStruct</a> ()=0</td></tr>
<tr class="memdesc:a145ed0908df02c7c059046e924dfc2d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for end read structure.  <a href="#a145ed0908df02c7c059046e924dfc2d3">More...</a><br /></td></tr>
<tr class="separator:a145ed0908df02c7c059046e924dfc2d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5ab95be724201478f7383adcbeefaa91"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a5ab95be724201478f7383adcbeefaa91">startReadUnion</a> (int32_t *discriminator)=0</td></tr>
<tr class="memdesc:a5ab95be724201478f7383adcbeefaa91"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for start read union.  <a href="#a5ab95be724201478f7383adcbeefaa91">More...</a><br /></td></tr>
<tr class="separator:a5ab95be724201478f7383adcbeefaa91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2cae8c3323549cd1437253ccf19c71b2"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#a2cae8c3323549cd1437253ccf19c71b2">endReadUnion</a> ()=0</td></tr>
<tr class="memdesc:a2cae8c3323549cd1437253ccf19c71b2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Prototype for end read Union.  <a href="#a2cae8c3323549cd1437253ccf19c71b2">More...</a><br /></td></tr>
<tr class="separator:a2cae8c3323549cd1437253ccf19c71b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afbbf5fb4b8fcbae3d99d7314a6aac995"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classerpc_1_1_codec.html#afbbf5fb4b8fcbae3d99d7314a6aac995">readNullFlag</a> (bool *isNull)=0</td></tr>
<tr class="memdesc:afbbf5fb4b8fcbae3d99d7314a6aac995"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reads a flag indicating whether the next value is null.  <a href="#afbbf5fb4b8fcbae3d99d7314a6aac995">More...</a><br /></td></tr>
<tr class="separator:afbbf5fb4b8fcbae3d99d7314a6aac995"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Abstract serialization encoder/decoder interface. </p>
<p>Codecs write to or read from a <a class="el" href="classerpc_1_1_message_buffer.html" title="Represents a memory buffer containing a message. ">MessageBuffer</a>. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ab8a8bf8e26193edaa7b60bd60a74e241"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">erpc::Codec::Codec </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Constructor. </p>
<p>This function initializes object attributes. </p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a45709c93c094b3429facb6962827892e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classerpc_1_1_message_buffer.html">MessageBuffer</a>* erpc::Codec::getBuffer </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Return message buffer used for read and write data. </p>
<dl class="section return"><dt>Returns</dt><dd>Pointer to used message buffer. </dd></dl>

</div>
</div>
<a class="anchor" id="ace7d311abca68729346074d603879c9f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual void erpc::Codec::setBuffer </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classerpc_1_1_message_buffer.html">MessageBuffer</a> &amp;&#160;</td>
          <td class="paramname"><em>buf</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for set message buffer used for read and write data. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">buf</td><td>Message buffer to set. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ac41e5be3cb4b64f4a0c52de160a7537d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::startWriteMessage </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceerpc.html#a7116f64fb1351d72417155cfed485478">message_type_t</a>&#160;</td>
          <td class="paramname"><em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>service</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>request</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>sequence</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for write header of message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td>Type of message. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">service</td><td>Which interface is requested. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">request</td><td>Which function need be called. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">sequence</td><td>Send sequence number to be sure that received message is reply for current request.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a0fa4c6301fbc588f85c49964d7970258">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="ad5781b1bb58c39f977bef3d599f62d97"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::endWriteMessage </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for write end of message. </p>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a765aa2f4ecba019e30678fe184493df2">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a002b086a5534d5be910d6930d3468a00"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::write </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for write boolean value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Boolean typed value to write.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#adeb48a7f68e1e0d830c3ff20c74fe01c">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a8bade9ddf36d8ac79b675e9b10169fdf"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::write </td>
          <td>(</td>
          <td class="paramtype">int8_t&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for write int8_t value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>int8_t typed value to write.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a26e815db6bb700eedc05efd0847594f7">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a07e236dd49c216ffab823afc58635e5c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::write </td>
          <td>(</td>
          <td class="paramtype">int16_t&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for write int16_t value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>int16_t typed value to write.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#ad0ce6acb67b6577dc975773de8a4d98f">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a24be3849ad7cabda4c589a912fdc7f82"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::write </td>
          <td>(</td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for write int32_t value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>int32_t typed value to write.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#ab9e62927c91cd5ea39acc918b6f2d403">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="aef1f5071b1e07f34fe9731fa5e10687f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::write </td>
          <td>(</td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for write int64_t value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>int64_t typed value to write.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a803eebcab2772ec699b8806de1ec1fb4">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a8edff61120231fb0e652825c2f6371e5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::write </td>
          <td>(</td>
          <td class="paramtype">uint8_t&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for write uint8_t value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>uint8_t typed value to write.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#aed053d4a4f7a43f42970baf22f6df81a">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="aa169e906bf4f7cd12a4e5588f65b14f6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::write </td>
          <td>(</td>
          <td class="paramtype">uint16_t&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for write uint16_t value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>uint16_t typed value to write.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#abc7ce37ff0b5094a0e0df9a60be314fd">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a929dc3f32a088c03b9f8cef0e30cab49"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::write </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for write uint32_t value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>uint32_t typed value to write.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#aeda059a98fdad49428810593998221c8">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a59d6be059c10422e528039699bf341ce"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::write </td>
          <td>(</td>
          <td class="paramtype">uint64_t&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for write uint64_t value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>uint64_t typed value to write.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a56acd09bf1a4fa41111857779aa62aa0">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a5aeed7d90150e7f65eb1017bc0e2688c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::write </td>
          <td>(</td>
          <td class="paramtype">float&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for write float value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>float typed value to write.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#ad5d891c77b2132d17f0ca9f6636d69de">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a973c421155e391dbb0550fa5e0065001"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::write </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for write double value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>double typed value to write.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#aa306ee64f85658f7e6fb4a9cd6b4144d">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a69360615709db326437110043adfae9c"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::writePtr </td>
          <td>(</td>
          <td class="paramtype">uintptr_t&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for write uintptr value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>uintptr typed value to write.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a780770af732a8c65c58c1849cfad6795">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="acdcec6c9575388ebbccfc7e326cfb7a2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::writeString </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>value</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for write string value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">length</td><td>of string. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>string value to write.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a8f476ced2a5921ca3d19d87bd5e64a57">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a395fc7d8577b0a00d571ed320b4da57e"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::writeBinary </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const uint8_t *&#160;</td>
          <td class="paramname"><em>value</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for write binary value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">length</td><td>of binary. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Binary value to write.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#aaa3686daacbdfc0e820c522bf20e7267">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a3255757c4dd48017a5f9e796c49e822b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::startWriteList </td>
          <td>(</td>
          <td class="paramtype">uint32_t&#160;</td>
          <td class="paramname"><em>length</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for start write list. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">length</td><td>Length of list.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a7d6a8fec0a26945a7965bc27ee1051f1">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="acb6720bc9f02a2068c32c353647cfa92"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::endWriteList </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for end write list. </p>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a8720e162676bb90450bdf93fe7521f9f">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a7ef8f0ef36444918b184036f02631088"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::startWriteStruct </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for start write structure. </p>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a886a191a25ce8ea45190a78f0811a552">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="ab35961c106dabca5c2204e8e53602d39"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::endWriteStruct </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for end write structure. </p>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a1c42a1b2ce3526227618fd69daee1257">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a8a0dde4a000ae0a443b2f3565226b7ad"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::startWriteUnion </td>
          <td>(</td>
          <td class="paramtype">int32_t&#160;</td>
          <td class="paramname"><em>discriminator</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for start write union. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">discriminator</td><td>Discriminator of union.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#ae78623ab797d92b673e6e5e342ec874e">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="abebbe8a790c65180033960963308eb49"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::endWriteUnion </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for end write union. </p>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a4dd887574809286d1cf4e1090cf4dbbe">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="ad070335fa31ad73d644ae2fc28ba0003"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::writeNullFlag </td>
          <td>(</td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>isNull</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Writes a flag indicating whether the next value is null. </p>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a0e30745ca41b9e2ee277619d968f001c">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="ad98b0492614fe14cf4461972cd6fe9d9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::startReadMessage </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceerpc.html#a7116f64fb1351d72417155cfed485478">message_type_t</a> *&#160;</td>
          <td class="paramname"><em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t *&#160;</td>
          <td class="paramname"><em>service</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t *&#160;</td>
          <td class="paramname"><em>request</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint32_t *&#160;</td>
          <td class="paramname"><em>sequence</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for read header of message. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td>Type of message. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">service</td><td>Which interface was used. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">request</td><td>Which function was called. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">sequence</td><td>Returned sequence number to be sure that received message is reply for current request.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a7abcf7a74b8de3b84ea417c16e850413">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a0ad6166e412a6161e7cc8c7aab81c1bf"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::endReadMessage </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for read end of message. </p>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a1a7d30f3d57e8a1520e0db8f69954d54">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="ae6f1c838bff3b95705e05d0204890fa5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::read </td>
          <td>(</td>
          <td class="paramtype">bool *&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for read boolean value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Boolean typed value to read.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#ae2bf041e34d2181f021cae256d05e76b">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a791e0ce1915cdfd0fe1cd1d4315f5fb6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::read </td>
          <td>(</td>
          <td class="paramtype">int8_t *&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for read int8_t value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>int8_t typed value to read.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#ab68b8430e167705f4f73bb014d24796f">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a830e2c4e43d9fa97d18c1e7fe99180a8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::read </td>
          <td>(</td>
          <td class="paramtype">int16_t *&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for read int16_t value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>int16_t typed value to read.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a263b251665a1e0f5c6153297be59942c">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a649e1087fd0a3595bab8a1576d9bed46"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::read </td>
          <td>(</td>
          <td class="paramtype">int32_t *&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for read int32_t value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>int32_t typed value to read.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a93576564cc908d9d9f597229224cd35f">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a7e96770ca212c00480381c4f0f54a3ff"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::read </td>
          <td>(</td>
          <td class="paramtype">int64_t *&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for read int64_t value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>int64_t typed value to read.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a9e7f44880b4e5f5255120be931dfe840">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="af5fb7f3b1c974196cba75f65538d6b80"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::read </td>
          <td>(</td>
          <td class="paramtype">uint8_t *&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for read uint8_t value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>uint8_t typed value to read.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#ac9adb814a0002a502e0ba823abd5a8f1">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a9f87529ab9ed05b0fdd175bbac2f41a9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::read </td>
          <td>(</td>
          <td class="paramtype">uint16_t *&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for read uint16_t value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>uint16_t typed value to read.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a80b7d904a53cb14f9bc6e1c4f3a78221">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a432a28551422ece42286e13868a696d2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::read </td>
          <td>(</td>
          <td class="paramtype">uint32_t *&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for read uint32_t value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>uint32_t typed value to read.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a2e576e146650ede278e652f693b49eac">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a62e4d29fdb26b3cdafa1e866848610bf"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::read </td>
          <td>(</td>
          <td class="paramtype">uint64_t *&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for read uint64_t value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>uint64_t typed value to read.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#adf22280a2d216fa568eb2a0432383557">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="ad507e9dd4fa21a17f705516ac23e96db"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::read </td>
          <td>(</td>
          <td class="paramtype">float *&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for read float value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>float typed value to read.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a5e48442bce725b7a7e3458c02d46f2b8">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="ad9d75c5f93bc233feaf444c3ec6b9dcc"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::read </td>
          <td>(</td>
          <td class="paramtype">double *&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for read double value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>double typed value to read.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#ad22e28c3d5571e0d452c59b6fdcbe223">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a29396d4d6870dba37cde1340cba45b5a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::readPtr </td>
          <td>(</td>
          <td class="paramtype">uintptr_t *&#160;</td>
          <td class="paramname"><em>value</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for read uintptr value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>uintptr typed value to read.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a7dd6a1e760bbe410f8dc36e2963be006">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a29c01cadcd7cd544c2248899d9d7cb2d"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::readString </td>
          <td>(</td>
          <td class="paramtype">uint32_t *&#160;</td>
          <td class="paramname"><em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>value</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for read string value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">length</td><td>of string. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>String value to read.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a681be30bb9490f5df171ac161957eb50">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a9f2fb79b05e89fc1c8a49454fd39e152"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::readBinary </td>
          <td>(</td>
          <td class="paramtype">uint32_t *&#160;</td>
          <td class="paramname"><em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint8_t **&#160;</td>
          <td class="paramname"><em>value</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for read binary value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">length</td><td>of binary. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>Binary value to read.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a286da2fb516cab0063b3ce9307cd557c">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="aa8728e3da1cb91af2e92fa236cacab06"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::startReadList </td>
          <td>(</td>
          <td class="paramtype">uint32_t *&#160;</td>
          <td class="paramname"><em>length</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for start read list. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">length</td><td>Length of list.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a31cbbd775e98a3288bdf7c741c2c7d84">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="af259955abf004ce3929bcc39b20611dd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::endReadList </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for end read list. </p>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a7063b583c1ee91ef0427b750933e234c">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a02e5f8b725da2f0560ce8a07fba3d991"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::startReadStruct </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for start read structure. </p>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#ae96c0cb07e2dd28d86ea331be19f8d15">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a145ed0908df02c7c059046e924dfc2d3"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::endReadStruct </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for end read structure. </p>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#ac9b8752c2edb161e4645ff836b6e2a75">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a5ab95be724201478f7383adcbeefaa91"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::startReadUnion </td>
          <td>(</td>
          <td class="paramtype">int32_t *&#160;</td>
          <td class="paramname"><em>discriminator</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for start read union. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">discriminator</td><td>Discriminator of union.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#acadffdd25147bd1be6bb9895387cefcb">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="a2cae8c3323549cd1437253ccf19c71b2"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::endReadUnion </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Prototype for end read Union. </p>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#aeba8b001673608391e08d0dff9b32b56">erpc::BasicCodec</a>.</p>

</div>
</div>
<a class="anchor" id="afbbf5fb4b8fcbae3d99d7314a6aac995"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="group__infra.html#ga5f8872e58f09a16d192bf664f9898651">erpc_status_t</a> erpc::Codec::readNullFlag </td>
          <td>(</td>
          <td class="paramtype">bool *&#160;</td>
          <td class="paramname"><em>isNull</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Reads a flag indicating whether the next value is null. </p>
<dl class="section return"><dt>Returns</dt><dd>Based on implementation. </dd></dl>

<p>Implemented in <a class="el" href="classerpc_1_1_basic_codec.html#a7bb45d1d9a0cbe45ccdaad319efa4294">erpc::BasicCodec</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a class="anchor" id="a003c4d8420239b9a347b46554ebeb903"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classerpc_1_1_message_buffer.html">MessageBuffer</a> erpc::Codec::m_buffer</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Message buffer object </p>

</div>
</div>
<a class="anchor" id="ad9fe5af5136be642e05a9e7335af8ff7"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classerpc_1_1_message_buffer_1_1_cursor.html">MessageBuffer::Cursor</a> erpc::Codec::m_cursor</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">
<p>Copy data to message buffers. </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="codec_8h_source.html">codec.h</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.5-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul class="foot">
    <li class="footer">&copy; 2016 NXP Semiconductors. All rights reserved.
    </li>
  </ul>
</div>
</body>
</html>
